home *** CD-ROM | disk | FTP | other *** search
MacBinary | 1994-05-08 | 8.3 KB | [ TEXT/MSET]
open in: MacOS 8.1
extracted
|
Win98
extracted
|
DOS
extracted
view JSON data
|
view as text
This file was processed as: MacBinary
(archive/macBinary ).
You can browse this item here: casemod.txt
Confidence Program Detection Match Type Support
10%
dexvert
MacBinary (archive/macBinary)
fallback
Supported
1%
dexvert
Text File (text/txt)
fallback
Supported
100%
file
MacBinary II, inited, Sun May 8 16:30:02 1994, modified Sun May 8 16:30:02 1994, creator 'MSET', type ASCII, 7839 bytes "casemod.txt" , at 0x1f1f 286 bytes resource
default (weak)
99%
file
data
default
74%
TrID
Macintosh plain text (MacBinary)
default
25%
TrID
MacBinary 2
default (weak)
100%
siegfried
fmt/1762 MacBinary (II)
default
100%
lsar
MacBinary
default
id metadata key value macFileType [ TEXT] macFileCreator [ MSET]
hex view +--------+-------------------------+-------------------------+--------+--------+ |00000000| 00 0b 63 61 73 65 6d 6f | 64 2e 74 78 74 00 00 00 |..casemo|d.txt...| |00000010| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........| |00000020| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........| |00000030| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........| |00000040| 00 54 45 58 54 4d 53 45 | 54 01 00 00 00 00 00 00 |.TEXTMSE|T.......| |00000050| 00 00 00 00 00 1e 9f 00 | 00 01 1e a9 f2 fc 4a a9 |........|......J.| |00000060| f2 fc 4a 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |..J.....|........| |00000070| 00 00 00 00 00 00 00 00 | 00 00 81 81 51 17 00 00 |........|....Q...| |00000080| 5c 20 54 68 69 73 20 6d | 6f 64 75 6c 65 20 68 61 |\ This m|odule ha| |00000090| 6e 64 6c 65 73 20 74 68 | 65 20 69 6d 70 6c 65 6d |ndles th|e implem| |000000a0| 65 6e 74 61 74 69 6f 6e | 20 6f 66 20 6f 75 72 20 |entation| of our | |000000b0| 63 61 73 65 20 63 6f 6e | 73 74 72 75 63 74 73 0d |case con|structs.| |000000c0| 5c 20 43 41 53 45 5b 20 | 61 6e 64 20 53 45 4c 45 |\ CASE[ |and SELE| |000000d0| 43 54 5b 2e 0d 5c 20 4e | 6f 74 69 63 65 20 74 68 |CT[..\ N|otice th| |000000e0| 61 74 20 77 65 20 64 6f | 6e 27 74 20 75 73 65 20 |at we do|n't use | |000000f0| 61 6e 79 20 61 73 73 65 | 6d 62 6c 65 72 20 61 74 |any asse|mbler at| |00000100| 20 61 6c 6c 2c 20 61 6e | 64 20 6f 6e 6c 79 20 6e | all, an|d only n| |00000110| 65 65 64 20 6f 6e 65 0d | 5c 20 73 70 65 63 69 61 |eed one.|\ specia| |00000120| 6c 20 68 61 6e 64 6c 65 | 72 20 77 6f 72 64 20 43 |l handle|r word C| |00000130| 61 73 65 4a 4d 50 20 74 | 6f 20 63 6f 6d 70 69 6c |aseJMP t|o compil| |00000140| 65 20 61 6e 20 69 6e 64 | 65 78 65 64 20 64 69 73 |e an ind|exed dis| |00000150| 70 61 74 63 68 20 66 6f | 72 20 53 45 4c 45 43 54 |patch fo|r SELECT| |00000160| 5b 2e 0d 5c 20 57 65 20 | 63 6f 6d 70 69 6c 65 20 |[..\ We |compile | |00000170| 73 65 71 75 65 6e 63 65 | 73 20 74 68 61 74 20 74 |sequence|s that t| |00000180| 68 65 20 6f 70 74 69 6d | 69 7a 65 72 20 77 69 6c |he optim|izer wil| |00000190| 6c 20 70 69 63 6b 20 75 | 70 20 73 6f 20 74 68 61 |l pick u|p so tha| |000001a0| 74 20 74 68 65 20 72 65 | 73 75 6c 74 69 6e 67 0d |t the re|sulting.| |000001b0| 5c 20 63 6f 64 65 20 69 | 73 20 70 72 65 74 74 79 |\ code i|s pretty| |000001c0| 20 77 65 6c 6c 20 6f 70 | 74 69 6d 75 6d 20 61 6e | well op|timum an| |000001d0| 79 77 61 79 2e 20 20 54 | 68 65 20 6b 65 79 20 74 |yway. T|he key t| |000001e0| 6f 20 74 68 69 73 20 69 | 73 20 74 68 65 20 75 73 |o this i|s the us| |000001f0| 65 20 6f 66 20 74 68 65 | 0d 5c 20 70 73 65 75 64 |e of the|.\ pseud| |00000200| 6f 2d 76 61 6c 75 65 20 | 22 54 72 65 67 22 20 77 |o-value |"Treg" w| |00000210| 68 69 63 68 20 69 73 20 | 61 63 74 75 61 6c 6c 79 |hich is |actually| |00000220| 20 74 68 65 20 6d 61 63 | 68 69 6e 65 20 72 65 67 | the mac|hine reg| |00000230| 69 73 74 65 72 20 44 31 | 2e 0d 0d 0d 74 79 70 65 |ister D1|....type| |00000240| 7b 20 20 6b 65 79 65 64 | 5f 63 61 73 65 20 20 69 |{ keyed|_case i| |00000250| 6e 64 65 78 65 64 5f 63 | 61 73 65 20 20 7d 0d 0d |ndexed_c|ase }..| |00000260| 32 34 30 09 63 6f 6e 73 | 74 61 6e 74 09 4b 45 59 |240.cons|tant.KEY| |00000270| 45 44 5f 43 48 4b 0d 32 | 35 30 09 63 6f 6e 73 74 |ED_CHK.2|50.const| |00000280| 61 6e 74 09 49 4e 44 45 | 58 45 44 5f 43 48 4b 0d |ant.INDE|XED_CHK.| |00000290| 0d 0d 3a 20 43 41 53 45 | 5b 09 09 5c 20 28 20 2d |..: CASE|[..\ ( -| |000002a0| 2d 20 53 63 68 61 69 6e | 20 46 63 68 61 69 6e 20 |- Schain| Fchain | |000002b0| 65 6e 64 43 68 61 69 6e | 20 64 69 66 66 20 65 6e |endChain| diff en| |000002c0| 64 2d 73 74 75 62 3f 20 | 63 68 6b 20 29 0d 09 09 |d-stub? |chk )...| |000002d0| 09 5c 20 20 49 6d 70 6c | 65 6d 65 6e 74 73 20 43 |.\ Impl|ements C| |000002e0| 41 53 45 5b 20 69 6e 20 | 6d 61 69 6e 20 64 69 63 |ASE[ in |main dic| |000002f0| 2e 0d 09 63 61 73 65 5f | 74 79 70 65 09 09 09 09 |...case_|type....| |00000300| 5c 20 73 61 76 65 20 6f | 76 65 72 20 6e 65 73 74 |\ save o|ver nest| |00000310| 65 64 20 63 61 73 65 73 | 0d 09 6b 65 79 65 64 5f |ed cases|..keyed_| |00000320| 63 61 73 65 20 2d 3e 20 | 63 61 73 65 5f 74 79 70 |case -> |case_typ| |00000330| 65 0d 09 22 20 2d 3e 20 | 74 72 65 67 22 20 65 76 |e.." -> |treg" ev| |00000340| 61 6c 75 61 74 65 0d 09 | 30 09 09 09 09 09 5c 20 |aluate..|0.....\ | |00000350| 69 6e 69 74 69 61 6c 20 | 73 75 63 63 65 73 73 20 |initial |success | |00000360| 63 68 61 69 6e 0d 09 30 | 09 09 09 09 09 5c 20 69 |chain..0|.....\ i| |00000370| 6e 69 74 69 61 6c 20 66 | 61 69 6c 20 63 68 61 69 |nitial f|ail chai| |00000380| 6e 0d 09 30 09 09 09 09 | 09 5c 20 69 6e 69 74 69 |n..0....|.\ initi| |00000390| 61 6c 20 65 6e 64 20 63 | 68 61 69 6e 0d 09 30 09 |al end c|hain..0.| |000003a0| 09 09 09 09 5c 20 69 6e | 69 74 69 61 6c 20 64 69 |....\ in|itial di| |000003b0| 66 66 0d 09 66 61 6c 73 | 65 09 09 09 09 5c 20 6e |ff..fals|e....\ n| |000003c0| 6f 20 65 6e 64 20 6f 66 | 20 73 74 75 62 20 79 65 |o end of| stub ye| |000003d0| 74 0d 09 6b 65 79 65 64 | 5f 63 68 6b 09 09 09 5c |t..keyed|_chk...\| |000003e0| 20 63 68 65 63 6b 20 76 | 61 6c 75 65 0d 09 70 6f | check v|alue..po| |000003f0| 73 74 70 6f 6e 65 20 5b | 20 20 3b 09 09 69 6d 6d |stpone [| ;..imm| |00000400| 65 64 69 61 74 65 0d 0d | 0d 3a 20 41 44 44 5f 45 |ediate..|.: ADD_E| |00000410| 4e 54 52 59 20 7b 20 63 | 63 6d 70 20 6d 61 72 6b |NTRY { c|cmp mark| |00000420| 2d 61 64 64 72 20 63 68 | 6b 20 6c 69 6e 6b 20 2d |-addr ch|k link -| |00000430| 2d 20 6c 69 6e 6b 27 20 | 7d 0d 09 6c 69 6e 6b 20 |- link' |}..link | |00000440| 49 46 0d 09 09 6c 69 6e | 6b 20 20 6d 61 72 6b 2d |IF...lin|k mark-| |00000450| 61 64 64 72 20 77 64 69 | 73 70 6c 21 09 09 5c 20 |addr wdi|spl!..\ | |00000460| 73 74 6f 72 65 20 6e 65 | 77 20 6d 61 72 6b 20 61 |store ne|w mark a| |00000470| 74 20 70 72 65 76 20 61 | 64 64 72 20 69 66 20 61 |t prev a|ddr if a| |00000480| 6e 79 0d 09 54 48 45 4e | 0d 09 6d 61 72 6b 2d 61 |ny..THEN|..mark-a| |00000490| 64 64 72 20 20 09 09 09 | 09 09 09 5c 20 6d 61 72 |ddr ...|...\ mar| |000004a0| 6b 20 61 64 64 72 20 69 | 73 20 6e 65 77 20 6c 69 |k addr i|s new li| |000004b0| 6e 6b 0d 09 63 63 6d 70 | 20 24 20 31 30 30 20 61 |nk..ccmp| $ 100 a| |000004c0| 6e 64 20 49 46 20 31 2b | 20 54 48 45 4e 20 20 3b |nd IF 1+| THEN ;| |000004d0| 09 5c 20 53 74 6f 72 65 | 20 22 64 6f 6e 74 53 68 |.\ Store| "dontSh| |000004e0| 6f 72 74 65 6e 22 20 66 | 6c 61 67 20 69 6e 20 6c |orten" f|lag in l| |000004f0| 6f 77 20 62 69 74 0d 0d | 0d 3a 20 52 45 53 4f 4c |ow bit..|.: RESOL| |00000500| 56 45 20 20 7b 20 6c 69 | 6e 6b 20 5c 20 6c 69 6e |VE { li|nk \ lin| |00000510| 6b 27 20 6e 78 74 20 2d | 2d 20 7d 0d 09 42 45 47 |k' nxt -|- }..BEG| |00000520| 49 4e 0d 09 09 6c 69 6e | 6b 20 20 2d 32 20 61 6e |IN...lin|k -2 an| |00000530| 64 20 2d 3e 20 6c 69 6e | 6b 27 0d 09 09 6c 69 6e |d -> lin|k'...lin| |00000540| 6b 27 0d 09 57 48 49 4c | 45 0d 09 09 6c 69 6e 6b |k'..WHIL|E...link| |00000550| 27 20 77 64 69 73 70 6c | 61 63 65 20 2d 3e 20 6e |' wdispl|ace -> n| |00000560| 78 74 0d 09 09 6c 69 6e | 6b 20 31 20 61 6e 64 20 |xt...lin|k 1 and | |00000570| 49 46 20 20 24 20 31 30 | 30 20 20 45 4c 53 45 20 |IF $ 10|0 ELSE | |00000580| 20 30 20 20 54 48 45 4e | 0d 09 09 6c 69 6e 6b 27 | 0 THEN|...link'| |00000590| 20 31 32 30 20 20 3e 72 | 65 73 6f 6c 76 65 0d 09 | 120 >r|esolve..| |000005a0| 09 6e 78 74 20 2d 3e 20 | 6c 69 6e 6b 0d 09 52 45 |.nxt -> |link..RE| |000005b0| 50 45 41 54 20 20 3b 0d | 0d 0d 3a 20 52 45 53 4f |PEAT ;.|..: RESO| |000005c0| 4c 56 45 46 20 20 7b 20 | 6c 69 6e 6b 20 5c 20 6c |LVEF { |link \ l| |000005d0| 69 6e 6b 27 20 6e 78 74 | 20 2d 2d 20 7d 0d 09 42 |ink' nxt| -- }..B| |000005e0| 45 47 49 4e 0d 09 09 6c | 69 6e 6b 20 20 2d 32 20 |EGIN...l|ink -2 | |000005f0| 61 6e 64 20 2d 3e 20 6c | 69 6e 6b 27 0d 09 09 6c |and -> l|ink'...l| |00000600| 69 6e 6b 27 0d 09 57 48 | 49 4c 45 0d 09 09 6c 69 |ink'..WH|ILE...li| |00000610| 6e 6b 27 20 77 64 69 73 | 70 6c 61 63 65 20 2d 3e |nk' wdis|place ->| |00000620| 20 6e 78 74 0d 09 09 6c | 69 6e 6b 20 31 20 61 6e | nxt...l|ink 1 an| |00000630| 64 20 49 46 20 20 24 20 | 31 30 30 20 20 45 4c 53 |d IF $ |100 ELS| |00000640| 45 20 20 30 20 20 54 48 | 45 4e 0d 09 09 6c 69 6e |E 0 TH|EN...lin| |00000650| 6b 27 20 31 32 30 20 20 | 3e 72 65 73 6f 6c 76 65 |k' 120 |>resolve| |00000660| 0d 09 09 6e 78 74 20 2d | 3e 20 6c 69 6e 6b 0d 09 |...nxt -|> link..| |00000670| 09 6c 69 6e 6b 20 49 46 | 20 20 70 6f 73 74 70 6f |.link IF| postpo| |00000680| 6e 65 20 6c 69 74 65 72 | 61 6c 20 20 22 20 2b 2b |ne liter|al " ++| |00000690| 3e 20 74 72 65 67 22 20 | 65 76 61 6c 75 61 74 65 |> treg" |evaluate| |000006a0| 20 20 54 48 45 4e 0d 09 | 52 45 50 45 41 54 20 20 | THEN..|REPEAT | |000006b0| 3b 0d 0d 0d 5c 20 46 49 | 58 5f 53 54 55 42 20 69 |;...\ FI|X_STUB i| |000006c0| 73 20 63 61 6c 6c 65 64 | 20 61 74 20 74 68 65 20 |s called| at the | |000006d0| 65 6e 64 20 6f 66 20 61 | 20 73 74 75 62 2e 20 20 |end of a| stub. | |000006e0| 57 65 20 64 6f 20 6d 61 | 6e 79 20 73 74 72 61 6e |We do ma|ny stran| |000006f0| 67 65 20 61 6e 64 0d 5c | 20 69 6e 74 72 69 63 61 |ge and.\| intrica| |00000700| 74 65 20 74 68 69 6e 67 | 73 2e 2e 2e 0d 0d 3a 20 |te thing|s.....: | |00000710| 46 49 58 5f 53 54 55 42 | 20 20 7b 20 53 63 68 61 |FIX_STUB| { Scha| |00000720| 69 6e 20 46 63 68 61 69 | 6e 20 65 6e 64 43 68 61 |in Fchai|n endCha| |00000730| 69 6e 20 5c 20 73 76 4d | 43 20 2d 2d 20 65 6e 64 |in \ svM|C -- end| |00000740| 43 68 61 69 6e 27 20 7d | 0d 09 6d 6f 76 65 43 6f |Chain' }|..moveCo| |00000750| 64 65 3f 20 2d 3e 20 73 | 76 4d 43 0d 09 46 63 68 |de? -> s|vMC..Fch| |00000760| 61 69 6e 20 77 64 69 73 | 70 6c 61 63 65 0d 09 49 |ain wdis|place..I| |00000770| 46 0d 09 09 63 6f 6d 70 | 42 52 20 20 3e 6d 61 72 |F...comp|BR >mar| |00000780| 6b 20 20 65 6e 64 43 68 | 61 69 6e 20 61 64 64 5f |k endCh|ain add_| |00000790| 65 6e 74 72 79 20 20 2d | 3e 20 65 6e 64 43 68 61 |entry -|> endCha| |000007a0| 69 6e 0d 09 09 66 61 6c | 73 65 20 2d 3e 20 6d 6f |in...fal|se -> mo| |000007b0| 76 65 43 6f 64 65 3f 0d | 09 09 46 63 68 61 69 6e |veCode?.|..Fchain| |000007c0| 20 72 65 73 6f 6c 76 65 | 46 0d 09 45 4c 53 45 0d | resolve|F..ELSE.| |000007d0| 09 09 63 6f 6d 70 42 52 | 20 30 20 77 2c 0d 09 09 |..compBR| 0 w,...| |000007e0| 53 63 68 61 69 6e 09 09 | 5c 20 54 68 69 73 20 69 |Schain..|\ This i| |000007f0| 73 20 53 63 68 61 69 6e | 20 77 68 69 63 68 20 77 |s Schain| which w| |00000800| 65 27 76 65 20 61 6c 72 | 65 61 64 79 20 72 65 73 |e've alr|eady res| |00000810| 6f 6c 76 65 64 20 61 74 | 20 74 68 65 0d 09 09 09 |olved at| the....| |00000820| 09 09 5c 20 74 68 65 20 | 73 74 61 72 74 20 6f 66 |..\ the |start of| |00000830| 20 74 68 65 20 73 74 75 | 62 2c 20 62 75 74 20 77 | the stu|b, but w| |00000840| 65 20 6e 65 65 64 20 69 | 74 20 68 65 72 65 20 74 |e need i|t here t| |00000850| 6f 20 66 69 6e 64 20 6f | 75 74 0d 09 09 49 46 09 |o find o|ut...IF.| |00000860| 09 09 5c 20 69 66 20 74 | 68 65 72 65 20 77 65 72 |..\ if t|here wer| |00000870| 65 20 73 65 76 65 72 61 | 6c 20 22 73 75 63 63 65 |e severa|l "succe| |00000880| 73 73 22 20 69 74 65 6d | 73 20 2d 20 69 66 20 73 |ss" item|s - if s| |00000890| 6f 2c 20 77 65 0d 09 09 | 09 09 09 5c 20 63 61 6e |o, we...|...\ can| |000008a0| 27 74 20 73 68 6f 72 74 | 65 6e 20 74 68 65 20 22 |'t short|en the "| |000008b0| 66 61 69 6c 22 20 62 72 | 61 6e 63 68 28 65 73 29 |fail" br|anch(es)| |000008c0| 0d 09 09 09 66 61 6c 73 | 65 20 2d 3e 20 6d 6f 76 |....fals|e -> mov| |000008d0| 65 43 6f 64 65 3f 0d 09 | 09 54 48 45 4e 0d 09 09 |eCode?..|.THEN...| |000008e0| 46 63 68 61 69 6e 20 72 | 65 73 6f 6c 76 65 46 0d |Fchain r|esolveF.| |000008f0| 09 09 32 20 2d 2d 3e 20 | 44 50 20 3e 6d 61 72 6b |..2 --> |DP >mark| |00000900| 20 20 65 6e 64 43 68 61 | 69 6e 20 61 64 64 5f 65 | endCha|in add_e| |00000910| 6e 74 72 79 20 20 2d 3e | 20 65 6e 64 43 68 61 69 |ntry ->| endChai| |00000920| 6e 0d 09 54 48 45 4e 0d | 09 73 76 4d 43 20 2d 3e |n..THEN.|.svMC ->| |00000930| 20 6d 6f 76 65 43 6f 64 | 65 3f 0d 09 65 6e 64 43 | moveCod|e?..endC| |00000940| 68 61 69 6e 20 20 3b 0d | 0d 0d 3a 20 4e 45 57 5f |hain ;.|..: NEW_| |00000950| 53 54 55 42 20 20 7b 09 | 53 63 68 61 69 6e 20 46 |STUB {.|Schain F| |00000960| 63 68 61 69 6e 20 65 6e | 64 43 68 61 69 6e 0d 09 |chain en|dChain..| |00000970| 09 09 09 64 69 66 66 20 | 65 6e 64 2d 73 74 75 62 |...diff |end-stub| |00000980| 3f 20 63 68 6b 0d 09 09 | 09 09 6c 6f 20 68 69 20 |? chk...|..lo hi | |00000990| 20 66 6c 67 0d 09 09 09 | 09 5c 20 73 76 4d 43 0d | flg....|.\ svMC.| |000009a0| 09 09 09 09 2d 2d 20 53 | 63 68 61 69 6e 27 20 46 |....-- S|chain' F| |000009b0| 63 68 61 69 6e 27 20 65 | 6e 64 43 68 61 69 6e 27 |chain' e|ndChain'| |000009c0| 20 64 69 66 66 20 65 6e | 64 2d 73 74 75 62 3f 20 | diff en|d-stub? | |000009d0| 63 68 6b 20 7d 0d 0d 09 | 70 6f 73 74 70 6f 6e 65 |chk }...|postpone| |000009e0| 20 5d 09 09 09 09 09 5c | 20 4d 75 73 74 20 62 65 | ].....\| Must be| |000009f0| 20 63 6f 6d 70 69 6c 69 | 6e 67 20 66 6f 72 20 65 | compili|ng for e| |00000a00| 76 61 6c 75 61 74 65 73 | 20 62 65 6c 6f 77 0d 09 |valuates| below..| |00000a10| 6b 65 79 65 64 5f 63 68 | 6b 20 63 68 6b 20 3f 70 |keyed_ch|k chk ?p| |00000a20| 61 69 72 73 0d 09 65 6e | 64 2d 73 74 75 62 3f 09 |airs..en|d-stub?.| |00000a30| 09 09 09 09 5c 20 4e 5a | 20 69 66 20 65 6e 64 69 |....\ NZ| if endi| |00000a40| 6e 67 20 61 20 73 74 75 | 62 0d 09 49 46 20 20 53 |ng a stu|b..IF S| |00000a50| 63 68 61 69 6e 20 46 63 | 68 61 69 6e 20 65 6e 64 |chain Fc|hain end| |00000a60| 43 68 61 69 6e 20 66 69 | 78 5f 73 74 75 62 20 20 |Chain fi|x_stub | |00000a70| 2d 3e 20 65 6e 64 43 68 | 61 69 6e 0d 09 09 30 20 |-> endCh|ain...0 | |00000a80| 2d 3e 20 53 63 68 61 69 | 6e 20 20 30 20 2d 3e 20 |-> Schai|n 0 -> | |00000a90| 46 63 68 61 69 6e 0d 09 | 54 48 45 4e 0d 0d 09 68 |Fchain..|THEN...h| |00000aa0| 69 20 6c 6f 20 3c 3e 0d | 09 49 46 0d 09 09 6c 6f |i lo <>.|.IF...lo| |00000ab0| 20 64 69 66 66 20 2d 20 | 20 70 6f 73 74 70 6f 6e | diff - | postpon| |00000ac0| 65 20 6c 69 74 65 72 61 | 6c 0d 09 09 22 20 2d 2d |e litera|l..." --| |00000ad0| 3e 20 74 72 65 67 20 74 | 72 65 67 20 30 3e 3d 20 |> treg t|reg 0>= | |00000ae0| 69 66 22 20 65 76 61 6c | 75 61 74 65 0d 09 09 46 |if" eval|uate...F| |00000af0| 63 68 61 69 6e 20 61 64 | 64 5f 65 6e 74 72 79 20 |chain ad|d_entry | |00000b00| 2d 3e 20 46 63 68 61 69 | 6e 0d 09 09 68 69 20 6c |-> Fchai|n...hi l| |00000b10| 6f 20 2d 0d 09 09 68 69 | 20 6c 6f 20 2d 20 20 70 |o -...hi| lo - p| |00000b20| 6f 73 74 70 6f 6e 65 20 | 6c 69 74 65 72 61 6c 0d |ostpone |literal.| |00000b30| 09 09 22 20 2d 2d 3e 20 | 74 72 65 67 20 74 72 65 |.." --> |treg tre| |00000b40| 67 20 30 3c 3d 22 20 65 | 76 61 6c 75 61 74 65 0d |g 0<=" e|valuate.| |00000b50| 09 09 66 6c 67 0d 09 09 | 49 46 20 20 70 6f 73 74 |..flg...|IF post| |00000b60| 70 6f 6e 65 20 69 66 0d | 09 09 09 46 63 68 61 69 |pone if.|...Fchai| |00000b70| 6e 20 61 64 64 5f 65 6e | 74 72 79 20 2d 3e 20 46 |n add_en|try -> F| |00000b80| 63 68 61 69 6e 0d 09 09 | 45 4c 53 45 0d 09 09 09 |chain...|ELSE....| |00000b90| 70 6f 73 74 70 6f 6e 65 | 20 6e 69 66 20 20 64 6f |postpone| nif do| |00000ba0| 6e 74 53 68 6f 72 74 65 | 6e 0d 09 09 09 53 63 68 |ntShorte|n....Sch| |00000bb0| 61 69 6e 20 61 64 64 5f | 65 6e 74 72 79 20 2d 3e |ain add_|entry ->| |00000bc0| 20 53 63 68 61 69 6e 0d | 09 09 54 48 45 4e 0d 09 | Schain.|..THEN..| |00000bd0| 45 4c 53 45 0d 09 09 68 | 69 20 64 69 66 66 20 2d |ELSE...h|i diff -| |00000be0| 20 20 70 6f 73 74 70 6f | 6e 65 20 6c 69 74 65 72 | postpo|ne liter| |00000bf0| 61 6c 0d 09 09 22 20 2d | 2d 3e 20 74 72 65 67 20 |al..." -|-> treg | |00000c00| 74 72 65 67 22 20 65 76 | 61 6c 75 61 74 65 0d 09 |treg" ev|aluate..| |00000c10| 09 66 6c 67 0d 09 09 49 | 46 09 70 6f 73 74 70 6f |.flg...I|F.postpo| |00000c20| 6e 65 20 6e 69 66 0d 09 | 09 09 46 63 68 61 69 6e |ne nif..|..Fchain| |00000c30| 20 61 64 64 5f 65 6e 74 | 72 79 20 2d 3e 20 46 63 | add_ent|ry -> Fc| |00000c40| 68 61 69 6e 0d 09 09 45 | 4c 53 45 0d 09 09 09 70 |hain...E|LSE....p| |00000c50| 6f 73 74 70 6f 6e 65 20 | 69 66 0d 09 09 09 53 63 |ostpone |if....Sc| |00000c60| 68 61 69 6e 20 61 64 64 | 5f 65 6e 74 72 79 20 2d |hain add|_entry -| |00000c70| 3e 20 53 63 68 61 69 6e | 0d 09 09 54 48 45 4e 0d |> Schain|...THEN.| |00000c80| 09 54 48 45 4e 0d 09 6c | 6f 20 2d 3e 20 64 69 66 |.THEN..l|o -> dif| |00000c90| 66 0d 09 66 6c 67 20 49 | 46 0d 09 09 53 63 68 61 |f..flg I|F...Scha| |00000ca0| 69 6e 20 72 65 73 6f 6c | 76 65 0d 09 09 53 63 68 |in resol|ve...Sch| |00000cb0| 61 69 6e 20 49 46 20 20 | 68 65 72 65 20 32 2d 20 |ain IF |here 2- | |00000cc0| 20 2d 3e 20 46 63 68 61 | 69 6e 20 20 54 48 45 4e | -> Fcha|in THEN| |00000cd0| 0d 09 09 09 09 09 09 09 | 09 09 5c 20 77 65 20 63 |........|..\ we c| |00000ce0| 6c 65 61 72 20 53 63 68 | 61 69 6e 20 6e 65 78 74 |lear Sch|ain next| |00000cf0| 20 74 69 6d 65 20 61 72 | 6f 75 6e 64 2c 0d 09 09 | time ar|ound,...| |00000d00| 09 09 09 09 09 09 09 5c | 20 20 73 69 6e 63 65 20 |.......\| since | |00000d10| 61 74 20 46 49 58 5f 53 | 54 55 42 20 77 65 20 6e |at FIX_S|TUB we n| |00000d20| 65 65 64 20 74 6f 20 6b | 6e 6f 77 0d 09 09 09 09 |eed to k|now.....| |00000d30| 09 09 09 09 09 5c 20 20 | 77 68 65 74 68 65 72 20 |.....\ |whether | |00000d40| 61 6e 79 74 68 69 6e 67 | 20 77 61 73 20 6f 6e 20 |anything| was on | |00000d50| 69 74 0d 09 45 4c 53 45 | 0d 09 09 68 69 20 6c 6f |it..ELSE|...hi lo| |00000d60| 20 3c 3e 0d 09 09 49 46 | 0d 09 09 09 6d 6f 76 65 | <>...IF|....move| |00000d70| 43 6f 64 65 3f 20 2d 3e | 20 73 76 4d 43 0d 09 09 |Code? ->| svMC...| |00000d80| 09 66 61 6c 73 65 20 2d | 3e 20 6d 6f 76 65 43 6f |.false -|> moveCo| |00000d90| 64 65 3f 09 09 09 09 5c | 20 46 6f 72 20 73 65 76 |de?....\| For sev| |00000da0| 65 72 61 6c 20 72 65 73 | 73 6f 6e 73 21 0d 09 09 |eral res|sons!...| |00000db0| 09 70 6f 73 74 70 6f 6e | 65 20 6c 69 74 65 72 61 |.postpon|e litera| |00000dc0| 6c 20 20 22 20 2b 2b 3e | 20 74 72 65 67 22 20 65 |l " ++>| treg" e| |00000dd0| 76 61 6c 75 61 74 65 20 | 0d 09 09 09 46 63 68 61 |valuate |....Fcha| |00000de0| 69 6e 20 72 65 73 6f 6c | 76 65 20 20 30 20 2d 3e |in resol|ve 0 ->| |00000df0| 20 46 63 68 61 69 6e 0d | 09 09 09 73 76 4d 43 20 | Fchain.|...svMC | |00000e00| 2d 3e 20 6d 6f 76 65 43 | 6f 64 65 3f 0d 09 09 54 |-> moveC|ode?...T| |00000e10| 48 45 4e 0d 09 54 48 45 | 4e 0d 09 53 63 68 61 69 |HEN..THE|N..Schai| |00000e20| 6e 20 46 63 68 61 69 6e | 20 65 6e 64 43 68 61 69 |n Fchain| endChai| |00000e30| 6e 20 64 69 66 66 0d 09 | 66 6c 67 09 09 09 09 09 |n diff..|flg.....| |00000e40| 09 09 09 5c 20 66 6c 67 | 20 69 73 20 65 6e 64 5f |...\ flg| is end_| |00000e50| 73 74 75 62 3f 20 66 6f | 72 20 6e 65 78 74 20 74 |stub? fo|r next t| |00000e60| 69 6d 65 0d 09 6b 65 79 | 65 64 5f 63 68 6b 20 20 |ime..key|ed_chk | |00000e70| 3b 0d 0d 0d 3a 20 44 45 | 46 41 55 4c 54 20 20 7b |;...: DE|FAULT {| |00000e80| 09 53 63 68 61 69 6e 20 | 46 63 68 61 69 6e 20 65 |.Schain |Fchain e| |00000e90| 6e 64 43 68 61 69 6e 0d | 09 09 09 09 64 69 66 66 |ndChain.|....diff| |00000ea0| 20 65 6e 64 2d 73 74 75 | 62 3f 20 63 68 6b 0d 09 | end-stu|b? chk..| |00000eb0| 09 09 09 2d 2d 20 65 6e | 64 43 68 61 69 6e 20 63 |...-- en|dChain c| |00000ec0| 68 6b 20 7d 0d 09 09 09 | 09 0d 09 6b 65 79 65 64 |hk }....|...keyed| |00000ed0| 5f 63 68 6b 20 63 68 6b | 20 3f 70 61 69 72 73 0d |_chk chk| ?pairs.| |00000ee0| 09 65 6e 64 2d 73 74 75 | 62 3f 0d 09 49 46 09 53 |.end-stu|b?..IF.S| |00000ef0| 63 68 61 69 6e 20 46 63 | 68 61 69 6e 20 65 6e 64 |chain Fc|hain end| |00000f00| 43 68 61 69 6e 20 20 66 | 69 78 5f 73 74 75 62 20 |Chain f|ix_stub | |00000f10| 20 2d 3e 20 65 6e 64 43 | 68 61 69 6e 20 20 54 48 | -> endC|hain TH| |00000f20| 45 4e 0d 09 70 6f 73 74 | 70 6f 6e 65 20 74 72 65 |EN..post|pone tre| |00000f30| 67 0d 09 64 69 66 66 20 | 70 6f 73 74 70 6f 6e 65 |g..diff |postpone| |00000f40| 20 6c 69 74 65 72 61 6c | 20 20 70 6f 73 74 70 6f | literal| postpo| |00000f50| 6e 65 20 2b 0d 09 65 6e | 64 43 68 61 69 6e 20 20 |ne +..en|dChain | |00000f60| 6b 65 79 65 64 5f 63 68 | 6b 20 31 2b 20 20 3b 0d |keyed_ch|k 1+ ;.| |00000f70| 09 0d 0d 3a 20 5d 43 41 | 53 45 20 20 7b 20 65 6e |...: ]CA|SE { en| |00000f80| 64 43 68 61 69 6e 20 63 | 68 6b 20 5c 20 73 76 4d |dChain c|hk \ svM| |00000f90| 43 20 2d 2d 20 7d 0d 09 | 6b 65 79 65 64 5f 63 68 |C -- }..|keyed_ch| |00000fa0| 6b 20 31 2b 20 63 68 6b | 20 3f 70 61 69 72 73 0d |k 1+ chk| ?pairs.| |00000fb0| 09 6d 6f 76 65 43 6f 64 | 65 3f 20 2d 3e 20 73 76 |.moveCod|e? -> sv| |00000fc0| 4d 43 0d 09 66 61 6c 73 | 65 20 2d 3e 20 6d 6f 76 |MC..fals|e -> mov| |00000fd0| 65 43 6f 64 65 3f 0d 09 | 65 6e 64 43 68 61 69 6e |eCode?..|endChain| |00000fe0| 20 72 65 73 6f 6c 76 65 | 0d 09 73 76 4d 43 20 2d | resolve|..svMC -| |00000ff0| 3e 20 6d 6f 76 65 43 6f | 64 65 3f 0d 09 2d 3e 20 |> moveCo|de?..-> | |00001000| 63 61 73 65 5f 74 79 70 | 65 20 20 3b 09 09 69 6d |case_typ|e ;..im| |00001010| 6d 65 64 69 61 74 65 0d | 0d 0d 0d 5c 20 4e 6f 77 |mediate.|...\ Now| |00001020| 20 66 6f 72 20 61 6e 20 | 69 6e 64 65 78 65 64 20 | for an |indexed | |00001030| 63 61 73 65 2c 20 77 69 | 74 68 20 73 69 6d 69 6c |case, wi|th simil| |00001040| 61 72 20 73 74 79 6c 65 | 20 73 79 6e 74 61 78 3a |ar style| syntax:| |00001050| 0d 0d 20 20 20 30 09 76 | 61 6c 75 65 09 09 4d 41 |.. 0.v|alue..MA| |00001060| 58 49 4e 44 45 58 0d 20 | 20 20 30 09 76 61 6c 75 |XINDEX. | 0.valu| |00001070| 65 09 09 4d 49 4e 49 4e | 44 45 58 0d 20 20 20 0d |e..MININ|DEX. .| |00001080| 20 20 20 30 09 76 61 6c | 75 65 09 09 41 44 44 52 | 0.val|ue..ADDR| |00001090| 58 09 09 5c 20 6a 75 73 | 74 20 66 6f 72 20 74 65 |X..\ jus|t for te| |000010a0| 73 74 69 6e 67 0d 0d 0d | 3a 20 53 45 4c 45 43 54 |sting...|: SELECT| |000010b0| 5b 09 09 5c 20 28 20 2d | 2d 20 6c 6f 74 73 20 29 |[..\ ( -|- lots )| |000010c0| 0d 0d 09 63 61 73 65 5f | 74 79 70 65 20 20 6d 61 |...case_|type ma| |000010d0| 78 69 6e 64 65 78 20 20 | 6d 69 6e 69 6e 64 65 78 |xindex |minindex| |000010e0| 09 5c 20 53 61 76 65 20 | 6f 6e 20 73 74 61 63 6b |.\ Save |on stack| |000010f0| 20 66 6f 72 20 6e 65 73 | 74 65 64 20 63 61 73 65 | for nes|ted case| |00001100| 73 0d 09 69 6e 64 65 78 | 65 64 5f 63 61 73 65 20 |s..index|ed_case | |00001110| 20 2d 3e 20 63 61 73 65 | 5f 74 79 70 65 0d 09 30 | -> case|_type..0| |00001120| 20 2d 3e 20 6d 61 78 69 | 6e 64 65 78 0d 09 62 69 | -> maxi|ndex..bi| |00001130| 67 23 20 2d 3e 20 6d 69 | 6e 69 6e 64 65 78 0d 09 |g# -> mi|nindex..| |00001140| 63 6f 6d 70 42 72 20 3e | 6d 61 72 6b 09 09 09 5c |compBr >|mark...\| |00001150| 20 46 6f 72 77 61 72 64 | 20 62 72 61 6e 63 68 20 | Forward| branch | |00001160| 74 6f 20 64 69 73 70 61 | 74 63 68 20 63 6f 64 65 |to dispa|tch code| |00001170| 0d 09 64 6f 6e 74 53 68 | 6f 72 74 65 6e 09 09 09 |..dontSh|orten...| |00001180| 09 5c 20 50 65 6e 61 6c | 74 79 3a 20 61 20 74 65 |.\ Penal|ty: a te| |00001190| 72 72 69 62 6c 65 20 64 | 65 61 74 68 0d 09 31 09 |rrible d|eath..1.| |000011a0| 09 09 09 09 09 5c 20 44 | 75 6d 6d 79 2c 20 73 6f |.....\ D|ummy, so| |000011b0| 20 5d 53 45 4c 45 43 54 | 20 6b 6e 6f 77 73 20 77 | ]SELECT| knows w| |000011c0| 68 65 6e 20 74 6f 20 73 | 74 6f 70 0d 09 30 09 09 |hen to s|top..0..| |000011d0| 09 09 09 09 5c 20 69 6e | 69 74 69 61 6c 20 65 6e |....\ in|itial en| |000011e0| 64 20 63 68 61 69 6e 0d | 09 66 61 6c 73 65 09 09 |d chain.|.false..| |000011f0| 09 09 09 5c 20 6e 6f 20 | 65 6e 64 20 6f 66 20 73 |...\ no |end of s| |00001200| 74 75 62 20 79 65 74 0d | 09 69 6e 64 65 78 65 64 |tub yet.|.indexed| |00001210| 5f 63 68 6b 09 09 09 09 | 5c 20 63 68 65 63 6b 20 |_chk....|\ check | |00001220| 76 61 6c 75 65 0d 09 70 | 6f 73 74 70 6f 6e 65 20 |value..p|ostpone | |00001230| 5b 20 20 3b 09 09 69 6d | 6d 65 64 69 61 74 65 0d |[ ;..im|mediate.| |00001240| 0d 0d 09 0d 3a 20 54 42 | 4c 5f 4e 45 57 5f 53 54 |....: TB|L_NEW_ST| |00001250| 55 42 20 20 7b 20 20 65 | 6e 64 43 68 61 69 6e 20 |UB { e|ndChain | |00001260| 65 6e 64 2d 73 74 75 62 | 3f 20 63 68 6b 20 69 6e |end-stub|? chk in| |00001270| 64 65 78 20 66 6c 67 0d | 09 09 09 09 2d 2d 20 69 |dex flg.|....-- i| |00001280| 6e 64 65 78 20 68 65 72 | 65 20 65 6e 64 43 68 61 |ndex her|e endCha| |00001290| 69 6e 27 20 65 6e 64 2d | 73 74 75 62 3f 20 63 68 |in' end-|stub? ch| |000012a0| 6b 20 7d 0d 0d 09 70 6f | 73 74 70 6f 6e 65 20 5d |k }...po|stpone ]| |000012b0| 0d 09 69 6e 64 65 78 20 | 30 3c 20 20 3f 65 72 72 |..index |0< ?err| |000012c0| 6f 72 20 31 30 32 0d 09 | 69 6e 64 65 78 20 6d 61 |or 102..|index ma| |000012d0| 78 69 6e 64 65 78 20 6d | 61 78 20 20 2d 3e 20 6d |xindex m|ax -> m| |000012e0| 61 78 69 6e 64 65 78 0d | 09 69 6e 64 65 78 20 6d |axindex.|.index m| |000012f0| 69 6e 69 6e 64 65 78 20 | 6d 69 6e 20 20 2d 3e 20 |inindex |min -> | |00001300| 6d 69 6e 69 6e 64 65 78 | 0d 09 6d 61 78 69 6e 64 |minindex|..maxind| |00001310| 65 78 20 35 30 30 20 3e | 20 69 66 20 20 6d 73 67 |ex 500 >| if msg| |00001320| 23 20 38 35 20 20 74 68 | 65 6e 0d 09 65 6e 64 2d |# 85 th|en..end-| |00001330| 73 74 75 62 3f 0d 09 49 | 46 0d 09 09 63 6f 6d 70 |stub?..I|F...comp| |00001340| 62 72 20 3e 6d 61 72 6b | 20 20 65 6e 64 43 68 61 |br >mark| endCha| |00001350| 69 6e 20 61 64 64 5f 65 | 6e 74 72 79 20 20 2d 3e |in add_e|ntry ->| |00001360| 20 65 6e 64 43 68 61 69 | 6e 0d 09 54 48 45 4e 0d | endChai|n..THEN.| |00001370| 09 69 6e 64 65 78 20 68 | 65 72 65 0d 09 65 6e 64 |.index h|ere..end| |00001380| 43 68 61 69 6e 0d 09 66 | 6c 67 09 09 09 09 09 09 |Chain..f|lg......| |00001390| 09 09 5c 20 66 6c 67 20 | 69 73 20 65 6e 64 5f 73 |..\ flg |is end_s| |000013a0| 74 75 62 3f 20 66 6f 72 | 20 6e 65 78 74 20 74 69 |tub? for| next ti| |000013b0| 6d 65 0d 09 69 6e 64 65 | 78 65 64 5f 63 68 6b 20 |me..inde|xed_chk | |000013c0| 20 3b 0d 0d 0d 3a 20 54 | 42 4c 5f 44 45 46 41 55 | ;...: T|BL_DEFAU| |000013d0| 4c 54 20 20 7b 20 65 6e | 64 43 68 61 69 6e 20 65 |LT { en|dChain e| |000013e0| 6e 64 2d 73 74 75 62 3f | 20 63 68 6b 0d 09 09 09 |nd-stub?| chk....| |000013f0| 09 2d 2d 20 64 66 6c 74 | 2d 61 64 64 72 20 65 6e |.-- dflt|-addr en| |00001400| 64 43 68 61 69 6e 20 63 | 68 6b 20 7d 0d 0d 09 70 |dChain c|hk }...p| |00001410| 6f 73 74 70 6f 6e 65 20 | 5d 0d 09 65 6e 64 2d 73 |ostpone |]..end-s| |00001420| 74 75 62 3f 20 49 46 20 | 20 63 6f 6d 70 62 72 20 |tub? IF | compbr | |00001430| 3e 6d 61 72 6b 20 20 65 | 6e 64 43 68 61 69 6e 20 |>mark e|ndChain | |00001440| 61 64 64 5f 65 6e 74 72 | 79 20 20 2d 3e 20 65 6e |add_entr|y -> en| |00001450| 64 43 68 61 69 6e 20 20 | 54 48 45 4e 0d 09 68 65 |dChain |THEN..he| |00001460| 72 65 09 09 09 09 09 5c | 20 68 65 72 65 27 73 20 |re.....\| here's | |00001470| 77 68 65 72 65 20 74 68 | 65 20 64 65 66 61 75 6c |where th|e defaul| |00001480| 74 20 63 6f 64 65 20 77 | 69 6c 6c 20 73 74 61 72 |t code w|ill star| |00001490| 74 0d 09 0d 5c 20 6e 6f | 77 20 77 65 20 67 65 6e |t...\ no|w we gen| |000014a0| 65 72 61 74 65 20 74 68 | 65 20 63 6f 64 65 20 74 |erate th|e code t| |000014b0| 6f 20 72 65 63 6f 76 65 | 72 20 74 68 65 20 6f 72 |o recove|r the or| |000014c0| 69 67 69 6e 61 6c 20 69 | 6e 64 65 78 0d 0d 09 22 |iginal i|ndex..."| |000014d0| 20 74 72 65 67 20 32 2f | 20 2d 3e 20 74 72 65 67 | treg 2/| -> treg| |000014e0| 22 20 65 76 61 6c 75 61 | 74 65 0d 09 6d 69 6e 69 |" evalua|te..mini| |000014f0| 6e 64 65 78 20 70 6f 73 | 74 70 6f 6e 65 20 6c 69 |ndex pos|tpone li| |00001500| 74 65 72 61 6c 20 20 22 | 20 2b 2b 3e 20 74 72 65 |teral "| ++> tre| |00001510| 67 20 74 72 65 67 22 20 | 65 76 61 6c 75 61 74 65 |g treg" |evaluate| |00001520| 0d 09 65 6e 64 43 68 61 | 69 6e 0d 09 69 6e 64 65 |..endCha|in..inde| |00001530| 78 65 64 5f 63 68 6b 20 | 31 2b 20 20 3b 0d 0d 0d |xed_chk |1+ ;...| |00001540| 3a 20 5d 53 45 4c 45 43 | 54 20 28 20 2e 2e 2e 20 |: ]SELEC|T ( ... | |00001550| 69 6e 64 65 78 20 61 64 | 64 72 20 69 6e 64 65 78 |index ad|dr index| |00001560| 20 61 64 64 72 20 29 0d | 09 09 7b 20 64 66 6c 74 | addr ).|..{ dflt| |00001570| 2d 61 64 64 72 20 65 6e | 64 43 68 61 69 6e 20 63 |-addr en|dChain c| |00001580| 68 6b 20 5c 20 74 62 6c | 5f 73 74 61 72 74 20 73 |hk \ tbl|_start s| |00001590| 76 44 50 20 2d 2d 20 7d | 0d 0d 09 69 6e 64 65 78 |vDP -- }|...index| |000015a0| 65 64 5f 63 68 6b 20 31 | 2b 20 63 68 6b 20 3f 70 |ed_chk 1|+ chk ?p| |000015b0| 61 69 72 73 0d 09 63 6f | 6d 70 62 72 20 3e 6d 61 |airs..co|mpbr >ma| |000015c0| 72 6b 20 20 65 6e 64 43 | 68 61 69 6e 20 61 64 64 |rk endC|hain add| |000015d0| 5f 65 6e 74 72 79 20 20 | 2d 3e 20 65 6e 64 43 68 |_entry |-> endCh| |000015e0| 61 69 6e 09 5c 20 77 69 | 6e 64 20 75 70 20 64 65 |ain.\ wi|nd up de| |000015f0| 66 61 75 6c 74 20 73 74 | 75 62 0d 09 0d 20 5c 20 |fault st|ub... \ | |00001600| 4e 6f 77 20 77 65 20 62 | 75 69 6c 64 20 74 68 65 |Now we b|uild the| |00001610| 20 74 61 62 6c 65 3a 0d | 20 0d 20 09 68 65 72 65 | table:.| . .here| |00001620| 20 2d 3e 20 74 62 6c 5f | 73 74 61 72 74 0d 09 6d | -> tbl_|start..m| |00001630| 61 78 69 6e 64 65 78 20 | 6d 69 6e 69 6e 64 65 78 |axindex |minindex| |00001640| 20 2d 20 31 2b 20 32 2a | 20 61 6c 6c 6f 74 0d 09 | - 1+ 2*| allot..| |00001650| 64 66 6c 74 2d 61 64 64 | 72 20 74 62 6c 5f 73 74 |dflt-add|r tbl_st| |00001660| 61 72 74 20 2d 20 20 28 | 20 6e 6f 77 20 72 65 6c |art - (| now rel| |00001670| 61 74 69 76 65 20 74 6f | 20 74 62 6c 5f 61 64 64 |ative to| tbl_add| |00001680| 72 20 29 0d 09 68 65 72 | 65 20 32 2d 09 09 09 09 |r )..her|e 2-....| |00001690| 09 5c 20 6c 61 73 74 20 | 65 6e 74 72 79 20 61 64 |.\ last |entry ad| |000016a0| 64 72 0d 09 74 62 6c 5f | 73 74 61 72 74 0d 09 44 |dr..tbl_|start..D| |000016b0| 4f 20 20 28 20 66 69 6c | 6c 20 74 61 62 6c 65 20 |O ( fil|l table | |000016c0| 77 69 74 68 20 64 66 6c | 74 20 61 64 64 72 20 69 |with dfl|t addr i| |000016d0| 6e 69 74 69 61 6c 6c 79 | 20 29 0d 09 09 64 75 70 |nitially| )...dup| |000016e0| 20 20 69 20 77 21 0d 09 | 32 20 2b 4c 4f 4f 50 0d | i w!..|2 +LOOP.| |000016f0| 09 64 72 6f 70 0d 09 42 | 45 47 49 4e 09 28 20 69 |.drop..B|EGIN.( i| |00001700| 6e 64 65 78 20 61 64 64 | 72 20 29 09 64 75 70 20 |ndex add|r ).dup | |00001710| 31 20 3d 0d 09 4e 57 48 | 49 4c 45 0d 09 09 28 20 |1 =..NWH|ILE...( | |00001720| 69 6e 64 65 78 20 61 64 | 64 72 20 29 20 20 74 62 |index ad|dr ) tb| |00001730| 6c 5f 73 74 61 72 74 20 | 2d 20 20 73 77 61 70 20 |l_start |- swap | |00001740| 6d 69 6e 69 6e 64 65 78 | 20 2d 20 32 2a 20 74 62 |minindex| - 2* tb| |00001750| 6c 5f 73 74 61 72 74 20 | 2b 20 77 21 0d 09 52 45 |l_start |+ w!..RE| |00001760| 50 45 41 54 0d 09 64 72 | 6f 70 0d 09 0d 5c 20 4e |PEAT..dr|op...\ N| |00001770| 6f 77 20 77 65 20 67 65 | 6e 65 72 61 74 65 20 74 |ow we ge|nerate t| |00001780| 68 65 20 64 69 73 70 61 | 74 63 68 20 63 6f 64 65 |he dispa|tch code| |00001790| 3a 0d 0d 09 28 20 3e 6d | 61 72 6b 2d 66 72 6f 6d |:...( >m|ark-from| |000017a0| 2d 69 6e 69 74 69 61 6c | 2d 62 72 61 6e 63 68 20 |-initial|-branch | |000017b0| 29 0d 09 3e 72 65 73 6f | 6c 76 65 0d 09 22 20 2d |)..>reso|lve.." -| |000017c0| 3e 20 74 72 65 67 20 74 | 72 65 67 20 2b 3e 20 74 |> treg t|reg +> t| |000017d0| 72 65 67 22 20 65 76 61 | 6c 75 61 74 65 0d 09 6d |reg" eva|luate..m| |000017e0| 69 6e 69 6e 64 65 78 20 | 32 2a 20 70 6f 73 74 70 |inindex |2* postp| |000017f0| 6f 6e 65 20 6c 69 74 65 | 72 61 6c 20 22 20 2d 2d |one lite|ral " --| |00001800| 3e 20 74 72 65 67 22 20 | 65 76 61 6c 75 61 74 65 |> treg" |evaluate| |00001810| 0d 09 09 09 09 09 09 09 | 09 09 5c 20 43 6f 6d 70 |........|..\ Comp| |00001820| 69 6c 65 73 20 6e 6f 74 | 68 69 6e 67 20 69 66 20 |iles not|hing if | |00001830| 6d 69 6e 69 6e 64 65 78 | 20 69 73 20 7a 65 72 6f |minindex| is zero| |00001840| 0d 09 6d 61 78 69 6e 64 | 65 78 20 6d 69 6e 69 6e |..maxind|ex minin| |00001850| 64 65 78 20 2d 20 32 2a | 20 70 6f 73 74 70 6f 6e |dex - 2*| postpon| |00001860| 65 20 6c 69 74 65 72 61 | 6c 0d 09 22 20 74 72 65 |e litera|l.." tre| |00001870| 67 20 75 3c 20 6e 69 66 | 22 20 65 76 61 6c 75 61 |g u< nif|" evalua| |00001880| 74 65 0d 09 66 61 6c 73 | 65 20 2d 3e 20 6d 6f 76 |te..fals|e -> mov| |00001890| 65 43 6f 64 65 3f 0d 09 | 64 66 6c 74 2d 61 64 64 |eCode?..|dflt-add| |000018a0| 72 20 2d 3e 20 44 50 20 | 3e 72 65 73 6f 6c 76 65 |r -> DP |>resolve| |000018b0| 09 09 5c 20 62 72 61 6e | 63 68 20 69 73 20 61 63 |..\ bran|ch is ac| |000018c0| 74 75 61 6c 6c 79 20 62 | 61 63 6b 2c 20 62 75 74 |tually b|ack, but| |000018d0| 20 74 68 61 74 27 73 20 | 4f 4b 0d 09 09 09 09 09 | that's |OK......| |000018e0| 09 09 09 09 5c 20 20 73 | 6f 20 6c 6f 6e 67 20 61 |....\ s|o long a| |000018f0| 73 20 77 65 20 69 6e 68 | 69 62 69 74 20 63 6f 64 |s we inh|ibit cod| |00001900| 65 20 6d 6f 76 65 6d 65 | 6e 74 0d 09 66 72 4e 78 |e moveme|nt..frNx| |00001910| 74 44 50 20 2d 3e 20 44 | 50 0d 09 74 62 6c 5f 73 |tDP -> D|P..tbl_s| |00001920| 74 61 72 74 20 6c 69 74 | 2d 61 64 64 72 20 22 20 |tart lit|-addr " | |00001930| 74 72 65 67 20 2b 20 77 | 40 78 20 2d 3e 20 74 61 |treg + w|@x -> ta| |00001940| 72 65 67 22 20 65 76 61 | 6c 75 61 74 65 0d 09 74 |reg" eva|luate..t| |00001950| 62 6c 5f 73 74 61 72 74 | 20 6c 69 74 2d 61 64 64 |bl_start| lit-add| |00001960| 72 20 22 20 74 61 72 65 | 67 20 2b 22 20 65 76 61 |r " tare|g +" eva| |00001970| 6c 75 61 74 65 20 20 63 | 61 73 65 4a 4d 50 0d 09 |luate c|aseJMP..| |00001980| 65 6e 64 43 68 61 69 6e | 20 72 65 73 6f 6c 76 65 |endChain| resolve| |00001990| 09 09 09 09 5c 20 63 61 | 6e 27 74 20 6d 6f 76 65 |....\ ca|n't move| |000019a0| 20 63 6f 64 65 20 6f 72 | 20 69 6e 69 74 69 61 6c | code or| initial| |000019b0| 20 62 72 61 6e 63 68 0d | 09 74 72 75 65 20 2d 3e | branch.|.true ->| |000019c0| 20 6d 6f 76 65 43 6f 64 | 65 3f 09 09 09 09 5c 20 | moveCod|e?....\ | |000019d0| 20 77 6f 75 6c 64 20 62 | 65 20 77 72 6f 6e 67 0d | would b|e wrong.| |000019e0| 0d 09 2d 3e 20 6d 69 6e | 69 6e 64 65 78 20 20 2d |..-> min|index -| |000019f0| 3e 20 6d 61 78 69 6e 64 | 65 78 20 20 2d 3e 20 63 |> maxind|ex -> c| |00001a00| 61 73 65 5f 74 79 70 65 | 20 20 3b 09 09 09 69 6d |ase_type| ;...im| |00001a10| 6d 65 64 69 61 74 65 0d | 0d 0d 5c 20 54 68 65 73 |mediate.|..\ Thes| |00001a20| 65 20 77 6f 72 64 73 20 | 61 72 65 20 74 68 65 20 |e words |are the | |00001a30| 73 61 6d 65 20 69 6e 20 | 62 6f 74 68 20 63 6f 6e |same in |both con| |00001a40| 73 74 72 75 63 74 73 2c | 20 73 6f 20 77 65 20 77 |structs,| so we w| |00001a50| 6f 72 6b 20 6f 75 74 20 | 77 68 69 63 68 20 61 63 |ork out |which ac| |00001a60| 74 69 6f 6e 0d 5c 20 74 | 6f 20 61 70 70 6c 79 20 |tion.\ t|o apply | |00001a70| 62 79 20 6c 6f 6f 6b 69 | 6e 67 20 61 74 20 63 61 |by looki|ng at ca| |00001a80| 73 65 5f 74 79 70 65 2e | 0d 0d 3a 20 5d 3d 3e 09 |se_type.|..: ]=>.| |00001a90| 09 63 61 73 65 5f 74 79 | 70 65 20 6b 65 79 65 64 |.case_ty|pe keyed| |00001aa0| 5f 63 61 73 65 20 3d 0d | 09 09 09 49 46 09 09 64 |_case =.|...IF..d| |00001ab0| 75 70 20 20 74 72 75 65 | 20 6e 65 77 5f 73 74 75 |up true| new_stu| |00001ac0| 62 0d 09 09 09 45 4c 53 | 45 09 74 72 75 65 20 74 |b....ELS|E.true t| |00001ad0| 62 6c 5f 6e 65 77 5f 73 | 74 75 62 0d 09 09 09 54 |bl_new_s|tub....T| |00001ae0| 48 45 4e 20 20 3b 09 09 | 09 09 09 09 69 6d 6d 65 |HEN ;..|....imme| |00001af0| 64 69 61 74 65 0d 09 09 | 09 0d 3a 20 5d 2c 09 09 |diate...|..: ],..| |00001b00| 63 61 73 65 5f 74 79 70 | 65 20 6b 65 79 65 64 5f |case_typ|e keyed_| |00001b10| 63 61 73 65 20 3d 0d 09 | 09 09 49 46 09 09 64 75 |case =..|..IF..du| |00001b20| 70 20 66 61 6c 73 65 20 | 6e 65 77 5f 73 74 75 62 |p false |new_stub| |00001b30| 0d 09 09 09 45 4c 53 45 | 09 66 61 6c 73 65 20 74 |....ELSE|.false t| |00001b40| 62 6c 5f 6e 65 77 5f 73 | 74 75 62 0d 09 09 09 54 |bl_new_s|tub....T| |00001b50| 48 45 4e 20 20 3b 09 09 | 09 09 09 09 69 6d 6d 65 |HEN ;..|....imme| |00001b60| 64 69 61 74 65 0d 0d 3a | 20 52 41 4e 47 45 5d 3d |diate..:| RANGE]=| |00001b70| 3e 09 74 72 75 65 20 6e | 65 77 5f 73 74 75 62 20 |>.true n|ew_stub | |00001b80| 20 3b 09 09 09 69 6d 6d | 65 64 69 61 74 65 0d 3a | ;...imm|ediate.:| |00001b90| 20 52 41 4e 47 45 5d 2c | 09 66 61 6c 73 65 20 6e | RANGE],|.false n| |00001ba0| 65 77 5f 73 74 75 62 20 | 20 3b 09 09 09 69 6d 6d |ew_stub | ;...imm| |00001bb0| 65 64 69 61 74 65 0d 0d | 0d 3a 20 44 45 46 41 55 |ediate..|.: DEFAU| |00001bc0| 4c 54 3d 3e 09 63 61 73 | 65 5f 74 79 70 65 20 6b |LT=>.cas|e_type k| |00001bd0| 65 79 65 64 5f 63 61 73 | 65 20 3d 0d 09 09 09 49 |eyed_cas|e =....I| |00001be0| 46 09 09 64 65 66 61 75 | 6c 74 0d 09 09 09 45 4c |F..defau|lt....EL| |00001bf0| 53 45 09 74 62 6c 5f 64 | 65 66 61 75 6c 74 0d 09 |SE.tbl_d|efault..| |00001c00| 09 09 54 48 45 4e 20 20 | 3b 09 09 09 09 09 09 69 |..THEN |;......i| |00001c10| 6d 6d 65 64 69 61 74 65 | 0d 0d 0d 65 6e 64 6c 6f |mmediate|...endlo| |00001c20| 61 64 0d 0d 2b 65 63 68 | 6f 0d 5c 20 53 6f 6d 65 |ad..+ech|o.\ Some| |00001c30| 74 68 69 6e 67 20 61 73 | 20 63 6f 6d 70 6c 69 63 |thing as| complic| |00001c40| 61 74 65 64 20 61 73 20 | 74 68 61 74 20 6e 65 65 |ated as |that nee| |00001c50| 64 73 20 61 20 62 69 74 | 20 6f 66 20 73 79 73 74 |ds a bit| of syst| |00001c60| 65 6d 61 74 69 63 20 74 | 65 73 74 69 6e 67 2e 2e |ematic t|esting..| |00001c70| 2e 0d 0d 3a 20 71 71 20 | 64 62 0d 09 63 61 73 65 |...: qq |db..case| |00001c80| 5b 20 32 31 20 5d 3d 3e | 20 32 31 30 0d 09 09 5b |[ 21 ]=>| 210...[| |00001c90| 20 32 32 20 5d 3d 3e 20 | 32 32 30 0d 09 09 5b 20 | 22 ]=> |220...[ | |00001ca0| 38 30 20 5d 2c 20 5b 20 | 38 32 20 5d 2c 20 5b 20 |80 ], [ |82 ], [ | |00001cb0| 38 34 20 5d 2c 20 5b 20 | 38 36 20 5d 3d 3e 20 38 |84 ], [ |86 ]=> 8| |00001cc0| 38 38 0d 09 09 5b 20 33 | 30 20 34 30 20 72 61 6e |88...[ 3|0 40 ran| |00001cd0| 67 65 5d 3d 3e 20 33 33 | 33 0d 09 09 5b 20 39 30 |ge]=> 33|3...[ 90| |00001ce0| 20 5d 2c 20 5b 20 39 32 | 20 5d 2c 20 5b 20 31 30 | ], [ 92| ], [ 10| |00001cf0| 30 20 31 35 30 20 72 61 | 6e 67 65 5d 2c 20 5b 20 |0 150 ra|nge], [ | |00001d00| 31 37 30 20 5d 3d 3e 20 | 2d 39 39 39 0d 09 09 5b |170 ]=> |-999...[| |00001d10| 20 32 32 32 20 5d 3d 3e | 20 20 32 32 32 30 0d 09 | 222 ]=>| 2220..| |00001d20| 20 20 64 65 66 61 75 6c | 74 3d 3e 20 39 39 0d 09 | defaul|t=> 99..| |00001d30| 20 5d 63 61 73 65 20 20 | 3b 0d 0d 3a 20 71 20 64 | ]case |;..: q d| |00001d40| 62 0d 09 73 65 6c 65 63 | 74 5b 09 33 20 5d 3d 3e |b..selec|t[.3 ]=>| |00001d50| 20 32 33 0d 09 09 20 20 | 5b 20 32 20 5d 3d 3e 20 | 23... |[ 2 ]=> | |00001d60| 32 32 0d 5c 09 09 20 20 | 5b 20 30 20 5d 3d 3e 20 |22.\.. |[ 0 ]=> | |00001d70| 32 30 0d 09 09 20 20 5b | 20 38 20 5d 3d 3e 20 32 |20... [| 8 ]=> 2| |00001d80| 38 0d 09 64 65 66 61 75 | 6c 74 3d 3e 20 39 39 39 |8..defau|lt=> 999| |00001d90| 0d 09 5d 73 65 6c 65 63 | 74 20 20 3b 0d 0d 3a 20 |..]selec|t ;..: | |00001da0| 3f 43 48 4b 09 3c 3e 20 | 61 62 6f 72 74 22 20 63 |?CHK.<> |abort" c| |00001db0| 68 65 63 6b 20 46 41 49 | 4c 45 44 21 21 21 22 20 |heck FAI|LED!!!" | |00001dc0| 20 3b 0d 0d 65 6e 64 6c | 6f 61 64 0d 0d 2b 65 63 | ;..endl|oad..+ec| |00001dd0| 68 6f 0d 32 31 20 71 71 | 20 20 32 31 30 20 3f 63 |ho.21 qq| 210 ?c| |00001de0| 68 6b 0d 32 32 20 71 71 | 20 20 32 32 30 20 3f 63 |hk.22 qq| 220 ?c| |00001df0| 68 6b 0d 38 30 20 71 71 | 20 20 38 38 38 20 3f 63 |hk.80 qq| 888 ?c| |00001e00| 68 6b 0d 38 34 20 71 71 | 20 20 38 38 38 20 3f 63 |hk.84 qq| 888 ?c| |00001e10| 68 6b 0d 38 35 20 71 71 | 20 20 39 39 20 20 3f 63 |hk.85 qq| 99 ?c| |00001e20| 68 6b 20 20 38 35 20 3f | 63 68 6b 0d 33 35 20 71 |hk 85 ?|chk.35 q| |00001e30| 71 20 20 33 33 33 20 3f | 63 68 6b 0d 39 32 20 71 |q 333 ?|chk.92 q| |00001e40| 71 20 20 2d 39 39 39 20 | 3f 63 68 6b 0d 31 32 30 |q -999 |?chk.120| |00001e50| 20 71 71 20 2d 39 39 39 | 20 3f 63 68 6b 0d 31 37 | qq -999| ?chk.17| |00001e60| 30 20 71 71 20 2d 39 39 | 39 20 3f 63 68 6b 0d 32 |0 qq -99|9 ?chk.2| |00001e70| 32 32 20 71 71 20 32 32 | 32 30 20 3f 63 68 6b 0d |22 qq 22|20 ?chk.| |00001e80| 39 39 39 39 20 71 71 20 | 39 39 20 3f 63 68 6b 20 |9999 qq |99 ?chk | |00001e90| 39 39 39 39 20 3f 63 68 | 6b 0d 0d 33 20 71 09 09 |9999 ?ch|k..3 q..| |00001ea0| 32 33 09 3f 63 68 6b 0d | 32 20 71 09 09 32 32 09 |23.?chk.|2 q..22.| |00001eb0| 3f 63 68 6b 0d 38 20 71 | 09 09 32 38 09 3f 63 68 |?chk.8 q|..28.?ch| |00001ec0| 6b 0d 36 20 71 09 09 39 | 39 39 09 3f 63 68 6b 20 |k.6 q..9|99.?chk | |00001ed0| 20 36 20 3f 63 68 6b 0d | 2d 31 20 71 09 39 39 39 | 6 ?chk.|-1 q.999| |00001ee0| 09 3f 63 68 6b 20 20 2d | 31 20 3f 63 68 6b 0d 39 |.?chk -|1 ?chk.9| |00001ef0| 20 20 71 09 39 39 39 09 | 3f 63 68 6b 20 20 39 20 | q.999.|?chk 9 | |00001f00| 3f 63 68 6b 0d 0d 0d 5c | 20 74 6f 72 74 75 72 65 |?chk...\| torture| |00001f10| 20 74 65 73 74 73 20 57 | 4f 52 4b 45 44 21 0d 00 | tests W|ORKED!..| |00001f20| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........| |00001f30| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........| |00001f40| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........| |00001f50| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........| |00001f60| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........| |00001f70| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........| |00001f80| 00 00 01 00 00 00 01 00 | 00 00 00 00 00 00 00 1e |........|........| |00001f90| a8 a3 11 00 31 5a 5b 11 | a8 73 16 4c ee 18 80 ff |....1Z[.|.s.L....| |00001fa0| f0 4e 5e 4e 75 4e 56 5b | 5c 01 07 18 11 1e 2e 11 |.N^NuNV[|\.......| |00001fb0| 0b 63 61 73 65 6d 6f 64 | 2e 74 78 74 02 00 00 00 |.casemod|.txt....| |00001fc0| 50 61 72 74 53 49 54 78 | 00 00 00 00 00 00 00 00 |PartSITx|........| |00001fd0| 00 00 50 61 72 74 53 49 | 54 78 00 00 00 00 00 00 |..PartSI|Tx......| |00001fe0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........| |00001ff0| 00 00 ab 06 23 35 00 00 | 00 00 00 00 01 1e 00 10 |....#5..|........| |00002000| 07 2f 00 27 60 12 20 50 | 22 68 ee 26 01 42 05 12 |./.'`. P|"h.&.B..| |00002010| 4f ef 00 0c 01 60 20 32 | 27 14 2f 0c 20 54 20 50 |O....` 2|'./. T P| |00002020| 22 68 01 00 54 26 7f 31 | 34 96 01 67 6c 25 92 26 |"h..T&.1|4..gl%.&| |00002030| 7a 5b 55 7f 2f 03 56 c1 | 44 01 4a 01 2e 56 25 12 |z[U./.V.|D.J..V%.| |00002040| 00 44 4e 91 5a 5b 2a 34 | 04 60 2a 0c 06 00 fa 66 |.DN.Z[*4|.`*....f| |00002050| 24 11 4a 07 b0 7d bb 55 | 13 48 80 48 c0 2f 00 27 |$.J..}.U|.H.H./.'| |00002060| 35 01 00 48 26 34 01 10 | 05 73 01 18 e0 9f 14 4e |5..H&4..|.s.....N| |00002070| 5e 4e 75 4e 56 00 00 13 | 4a 2d f6 32 67 0a 55 56 |^NuNV...|J-.2g.UV| |00002080| 00 00 01 00 00 00 01 00 | 00 00 00 00 00 00 00 1e |........|........| |00002090| 00 00 00 00 00 00 00 00 | 00 1c 00 1e ff ff 00 00 |........|........| |000020a0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........| |000020b0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........| |000020c0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........| |000020d0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........| |000020e0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........| |000020f0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........| +--------+-------------------------+-------------------------+--------+--------+